// @Author EthanScriptOn
// @Desc
package interceptor

import "reflect"

// Result assembler
type ResultAccessor interface {
	// GetResultByIndex Get results based on subscripts
	GetResultByIndex(index int) (interface{}, bool)
	// GetResultByType Get results based on type
	GetResultByType(typ reflect.Type) (interface{}, bool)
	// GetResultWithoutError Get results without exception information
	GetResultWithoutError() ([]interface{}, bool)
	// GetResultError Obtain the anomaly information in the results
	GetResultError() error
	// GetResult Get all results (with exception information)
	GetResult() ([]interface{}, bool)
	// GetError Get exception information (not in the results)
	GetError() error
}
